package com.ruoyi.order.mapper;

import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.order.domain.HotProduct;
import com.ruoyi.order.domain.Vo.ProductVo;
import com.ruoyi.order.domain.app.Vo.ProductViewVo;

/**
 * 热销产品Mapper接口
 * 
 * @author ruoyi
 * @date 2022-02-04
 */
public interface HotProductMapper extends BaseMapper<HotProduct>
{
    /**
     * 查询热销产品
     * 
     * @param id 热销产品主键
     * @return 热销产品
     */
    HotProduct selectHotProductById(Integer id);

    /**
     * 查询热销产品列表
     * 
     * @param hotProduct 热销产品
     * @return 热销产品集合
     */
    List<HotProduct> selectHotProductList(HotProduct hotProduct);

    /**
     * 新增热销产品
     * 
     * @param hotProduct 热销产品
     * @return 结果
     */
    int insertHotProduct(HotProduct hotProduct);

    /**
     * 修改热销产品
     * 
     * @param hotProduct 热销产品
     * @return 结果
     */
    int updateHotProduct(HotProduct hotProduct);

    /**
     * 删除热销产品
     * 
     * @param id 热销产品主键
     * @return 结果
     */
    int deleteHotProductById(Integer id);

    /**
     * 批量删除热销产品
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    int deleteHotProductByIds(String[] ids);

    List<ProductVo> getHotProductPage(Map<String, Object> map);

    List<ProductVo> getHotProductPageList(Map<String, Object> map);

    List<ProductViewVo> getPopularRecommendation(Map<String, Object> map);
}
